package com.dut.bbs.data;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;

import com.dut.bbs.util.Settings;
import com.dut.bbs.util.StringUtils;




public class ThreadDetail {
	/**
	 * 
	 * @param data HtmlSource抓取的帖子的html
	 * @return 
	 */
	public static List<Map<String,String>> getTextDetail(String data,String url)
	{
		List<Map<String,String>> listResult = new ArrayList<Map<String,String>>();
		Document doc = null;
		doc = Jsoup.parse(data); 
		Elements eles = doc.getElementsByClass("list");
		String title="";
		for(Element e:eles.get(0).children())
		{
			if(e.toString().contains("<li class=\"f\">主题:"))
			{
				title=e.text();
				continue;
			}
			
			Map<String,String> tMap= new HashMap<String, String>();
			tMap.put("topic", title);                                  //帖子标题
			tMap.put("title", e.child(0).child(0).child(0).text());    //楼数，如“楼主”、“1楼”
			tMap.put("authorURL", e.child(0).child(0).child(1).attr("href")); //作者信息的URL
			tMap.put("author", e.child(0).child(0).child(1).text());  //作者ID
			tMap.put("time", e.child(0).child(0).child(2).text());    //发表时间
//			if(LoginEntity.isLogin()){
//				tMap.put("reply",e.child(0).child(1).child(0).attr("href"));   //回复地址
////				tMap.put("mail", e.child(0).child(1).child(1).attr("href"));   //发信地址
//			}
			tMap.put("reply", StringUtils.getReplyURL(url));       //回复地址
			String text = e.child(1).html().replaceAll("</?[^/?(img)|(br)|(font)][^><]*>", "");
//			text =removeStr("FROM",text);
			text = clearStr(text);
			text.replaceAll("&amp;", "&");
			tMap.put("info", text);   //该楼的实际内容，html格式，使用时需解析
			listResult.add(tMap);
		}
		
		return listResult;
		
	}
	private static String clearStr(String text){
		String tmp = "";
		String t[] = text.split("<br />");
		if(t.length==1)
			tmp = text;
		else{
			for(String t1:t){
				if(!Settings.showIP){
					if (!t1.startsWith(":") && !t1.startsWith("FROM "))
						tmp += (t1 + "<br />");
					else if (t1.contains("的大作中提到"))
						tmp += (t1 + "<br />");
				}else{
					if (!t1.startsWith(":"))
						tmp += (t1 + "<br />");
					else if (t1.contains("的大作中提到"))
						tmp += (t1 + "<br />");
				}
			}
		}
		if(tmp.endsWith("<br />"))
			tmp = tmp.substring(0, tmp.length()-6);
		return tmp;
	}
}